ऊपर दिए गए उदाहरण में, पूर्णांक मान NUM1 को फ्लोट वेरिएबल NUM2 में जोड़ा जाता है, जिसे एक फ्लोट में डाल दिया जाता है। परिणाम चर में परिणाम का प्रतिनिधित्व करने वाला एक फ्लोट मान होता है।
स्पष्ट कास्टिंग:
कास्ट ऑपरेटर का उपयोग करते हुए, स्पष्ट कास्टिंग स्पष्ट रूप से एक डेटा प्रकार को दूसरे में बदलते हैं। इसे कोड में स्पष्ट निर्देशों की आवश्यकता है और प्रोग्रामर को प्रकार रूपांतरण पर नियंत्रण की अनुमति देता है।
कैसे लिखें
(pzakar) ABaivyaKtai
यहां, अभिव्यक्ति मूल्य या चर है जिसे डाला जाना है, और (प्रकार) आवश्यक डेटा प्रकार के लिए खड़ा है।
उदाहरण
#samaahitaF <PsaTidiAayaAae.Pca>
paunaZ mauqyaF() {
ApaunaZ saMqyaaR1 = 15.6;
paunaZ DnaU2;
DnaU2 = (paunaZ) saMqyaaR1; // mauqar Walanaa sae ApaunaZ kae paunaZ
mauDznama(" parinaama hI: %paunaZ\n", DnaU2);
naivaZtanama 0;
}
आउटपुट
parinaama hI: 15
स्पष्टीकरण:
यह उदाहरण एक पूर्णांक में फ्लोट वेरिएबल NUM1 को स्पष्ट रूप से डालने के लिए (INT) सिंटैक्स का उपयोग करता है। आंशिक भाग को काटने के बाद, हमें पूर्णांक मान मिलता है और यह मान NUM2 चर को सौंपा जाता है।
संकीर्ण रूपांतरण:
जब एक मान को एक संकीर्ण रेंज या सटीकता के साथ डेटा प्रकार में परिवर्तित किया जाता है, तो इसे संकीर्ण रूपांतरित किया जाता है, जिसके परिणामस्वरूप डेटा हानि हो सकती है। यदि यह उचित रूप से नहीं संभाला जाता है, तो यह अप्रत्याशित व्यवहार को जन्म दे सकता है और स्पष्ट कास्टिंग की आवश्यकता है।
उदाहरण
#samaahitaF <PsaTidiAayaAae.Pca>
paunaZ mauqyaF() {
AMk saMqyaaR1 = 1234.56789;
paunaZ DnaU2;
DnaU2 = (paunaZ) saMqyaaR1; // saMkucana parivataZna sae AMk kae paunaZ
mauDznama(" parinaama hI: %paunaZ\n", DnaU2);
naivaZtanama 0;
}
आउटपुट
parinaama hI: 1234
स्पष्टीकरण:
यह उदाहरण एक पूर्णांक में डबल वैल्यू NUM1 को स्पष्ट रूप से कास्टिंग करके रूपांतरण को कम करता है। पूर्णांक मान NUM2 चर को भेजा जाता है, और आंशिक भाग को समाप्त कर दिया जाता है।
व्यापक रूपांतरण:
जब एक मान को व्यापक रेंज या अधिक सटीकता के साथ डेटा प्रकार में परिवर्तित किया जाता है, तो इस प्रक्रिया को व्यापक रूपांतरण कहा जाता है। चूंकि यह स्पष्ट रूप से होता है, इसलिए कास्टिंग आवश्यक नहीं है।
उदाहरण
#samaahitaF <PsaTidiAayaAae.Pca>
paunaZ mauqyaF() {
paunaZ saMqyaaR1 = 10;
AMk DnaU2;
DnaU2 = saMqyaaR1; // caaId.a parivataZna sae paunaZ kae AMk
mauDznama(" parinaama hI: %ApaunaZ\n", DnaU2);
naivaZtanama 0;
}
आउटपुट
parinaama hI: 10.000000
स्पष्टीकरण:
इस उदाहरण में, NUM2 चर के असाइनमेंट से पूर्णांक मान NUM1 के एक अंतर्निहित रूपांतरण में एक डबल में परिणाम होता है। प्रारंभिक पूर्णांक के समान संख्यात्मक मान के साथ एक डबल परिणाम है।
प्रकार कास्टिंग के लाभ
इसके कई फायदे प्रोग्रामर के लिए एक उपयोगी सुविधा सी में टाइप कास्टिंग बनाते हैं। आइए कुछ मुख्य लाभों की जांच करें:
सटीक नियंत्रण:
टाइप कास्टिंग प्रोग्रामर को गणना की सटीकता पर सटीक नियंत्रण रखने में सक्षम बनाता है। वे दशमलव स्थानों को बदल सकते हैं, भिन्नात्मक घटक को समाप्त कर सकते हैं, या चर को विभिन्न डेटा प्रकारों में परिवर्तित करके अधिक सटीक उत्तर प्राप्त कर सकते हैं।
डेटा संगतता:
बाहरी पुस्तकालयों या एपीआई का उपयोग करते समय, डेटा संगतता को आश्वस्त करने के लिए टाइप कास्टिंग आवश्यक है। विशिष्ट डेटा प्रकार कई पुस्तकालयों या कार्यों द्वारा इनपुट तर्क के रूप में अपेक्षित हैं। प्रोग्रामर आसानी से इन बाहरी घटकों के साथ अपने कोड को टाइप कास्टिंग का उपयोग करके जोड़ सकते हैं, प्रभावी डेटा ट्रांसमिशन और इंटरऑपरेबिलिटी की सुविधा प्रदान कर सकते हैं।
बेहतर लचीलापन:
टाइप कास्टिंग उपयोगकर्ता इनपुट का प्रबंधन करते समय अधिक अनुकूलनशीलता के लिए अनुमति देता है। प्रोग्रामर एक स्ट्रिंग को अतिरिक्त प्रसंस्करण या सत्यापन के लिए आवश्यक डेटा प्रकार में परिवर्तित कर सकते हैं, उदाहरण के लिए, इनपुट को स्ट्रिंग के रूप में स्वीकार करते समय। अधिक मजबूत इनपुट प्रसंस्करण और इस लचीलेपन द्वारा संभव किए गए बेहतर त्रुटि की जाँच के साथ, कार्यक्रम अधिक भरोसेमंद हैं।
प्रभावी स्मृति उपयोग:
छोटे डेटा प्रकारों में चर को कम करके जहां यह संभव है, टाइप कास्टिंग प्रोग्रामर को कुशलतापूर्वक मेमोरी का उपयोग करने में सक्षम बनाता है। उदाहरण के लिए, टाइप कास्टिंग मेमोरी को संरक्षित करने में सहायता कर सकता है यदि एक पूर्णांक मान को सुरक्षित रूप से चार या लघु जैसे छोटे डेटा प्रकार में संग्रहीत किया जा सकता है। यह लाभ सीमित संसाधनों के साथ प्रणालियों में अधिक महत्वपूर्ण हो जाता है जब स्मृति दक्षता महत्वपूर्ण होती है।
कोड पुन: प्रयोज्य:
प्रोग्रामर को विभिन्न डेटा प्रकारों के साथ एकल डेटा प्रकार के लिए बनाए गए कार्यों या घटकों को नियोजित करने के लिए सक्षम करके, टाइप कास्टिंग कोड पुन: प्रयोज्य को बढ़ाता है। वे मौजूदा कोड का पुन: उपयोग कर सकते हैं और विकास के समय और प्रयास में कटौती करते हुए, चर को प्रभावी ढंग से कास्टिंग करके दोहराव को रोक सकते हैं।
त्रुटि प्रबंधन:
त्रुटि प्रबंधन और पता लगाना प्रकार कास्टिंग से लाभान्वित हो सकता है। एक त्रुटि या अपवाद का उत्पादन किया जा सकता है। उदाहरण के लिए, यदि कोई रूपांतरण असंगत डेटा प्रकारों के कारण विफल रहता है, तो परिस्थिति को विनम्रता से हल करने का मौका देता है। विकास और परीक्षण चरणों के दौरान, यह त्रुटि पता लगाने की तकनीक किसी भी समस्या का पता लगाने और ठीक करने में सहायता करती है।
डेटा को सुरक्षित रखना:
सी में स्पष्ट रूप से कास्टिंग रूपांतरण के दौरान डेटा हानि की संभावना की याद के रूप में कार्य करता है। प्रोग्रामर को एक छोटे डेटा प्रकार में चर को परिवर्तित करते समय गंतव्य प्रकार की विवश सीमा या सटीकता का ध्यान रखना चाहिए। वे डेटा अखंडता पर प्रभाव का आकलन कर सकते हैं और, यदि आवश्यक हो, तो स्पष्ट रूप से चर को कास्टिंग करके उपयुक्त त्रुटि से निपटने की प्रक्रियाएं बना सकते हैं।
प्रदर्शन बढ़ाना:
कुछ प्रक्रियाओं को अधिक कुशलता से निष्पादित करके, टाइप कास्टिंग कभी -कभी प्रदर्शन को बढ़ा सकता है। उदाहरण के लिए, स्पष्ट कास्टिंग मिश्रित डेटा प्रकारों वाले जटिल अभिव्यक्तियों से निपटने के लिए, अधिक प्रभावी मशीन कोड के उत्पादन में संकलक की सहायता कर सकती है, जिससे तेज निष्पादन हो सकता है।
निष्कर्ष:
नतीजतन, C में टाइप कास्टिंग एक शक्तिशाली विशेषता है जो सटीकता नियंत्रण, डेटा संगतता, लचीलापन, मेमोरी ऑप्टिमाइज़ेशन, कोड पुन: उपयोग, त्रुटि से निपटने, डेटा हानि की सुरक्षा और संभावित गति लाभ प्रदान करती है। प्रोग्रामर ठीक-ठीक कम्प्यूटेशन कर सकते हैं, बाहरी घटकों के साथ बातचीत कर सकते हैं, उपयोगकर्ता इनपुट का प्रबंधन कर सकते हैं, मेमोरी उपयोग का अनुकूलन कर सकते हैं, कोड का पुन: उपयोग सुनिश्चित कर सकते हैं, गलतियाँ ढूंढ सकते हैं, डेटा हानि से बच सकते हैं, और एक डेटा प्रकार से दूसरे में चर बदलकर दक्षता को बढ़ावा दे सकते हैं। डेटा अखंडता और कार्यक्रम स्थिरता की गारंटी के लिए टाइप कास्टिंग का सावधानीपूर्वक उपयोग किया जाना चाहिए। प्रोग्रामर सी में टाइपकास्टिंग की एक ठोस समझ करके अपने कार्यक्रमों की कार्यक्षमता और प्रदर्शन में सुधार कर सकते हैं।
स्पष्टीकरण:
स्पष्टीकरण:
ऊपर दिए गए उदाहरण में, पूर्णांक मान NUM1 को फ्लोट वेरिएबल NUM2 में जोड़ा जाता है, जिसे एक फ्लोट में डाल दिया जाता है। परिणाम चर में परिणाम का प्रतिनिधित्व करने वाला एक फ्लोट मान होता है।
टाइप कास्टिंग सी में
प्रोग्रामिंग के दायरे में चर की प्रकृति और व्यवहार का निर्धारण करने में डेटा प्रकार महत्वपूर्ण हैं। TypeCasting हमें एक डेटा प्रकार को दूसरे में परिवर्तित करने की अनुमति देता है। इस प्रक्रिया को टाइप कास्टिंग कहा जाता है, और सी प्रोग्रामिंग भाषा इसे एक उपयोगी उपकरण के रूप में प्रदान करती है। इस ब्लॉग में, हम C. में सिंटैक्स, व्यावहारिक अनुप्रयोगों और टाइपकास्टिंग के लाभों की जांच करेंगे। एक चर के डेटा प्रकार को बदलने की प्रक्रिया को प्रकार कास्टिंग के रूप में जाना जाता है। यह विभिन्न प्रकार की स्थितियों में सहायक हो सकता है, जब उपयोगकर्ता इनपुट को संसाधित करते समय, गणितीय गणना करते हैं, या अन्य पुस्तकालयों के साथ बातचीत करते हैं जिन्हें डेटा प्रकारों की आवश्यकता होती है। सी भाषा में, हम टाइपकास्टिंग के लिए कास्ट ऑपरेटर का उपयोग करते हैं जिसे (प्रकार) द्वारा निरूपित किया जाता है।
कैसे लिखें
(pzakar)kimata;
नोट: डेटा हानि से बचने के लिए कम मूल्य को उच्च में परिवर्तित करने के लिए हमेशा सिफारिश की जाती है।
bainaa pzakar WlaaEZ:
paunaZ Ppaf= 9/4;
mauDznama("f: %paunaZ\n", Ppaf) ;//UtpaaDna: 2
saaYa pzakar WlaaEZ:
ApaunaZ Ppaf=(ApaunaZ) 9/4;
mauDznama("f: %ApaunaZ\n", Ppaf) ;//UtpaaDna: 2.250000
प्रकार की कास्टिंग के प्रकार
टाइप कास्टिंग सी में कई तरीकों से किया जा सकता है, जिसमें निहित और स्पष्ट कास्टिंग शामिल है।
निहित कास्टिंग:
जब कंपाइलर स्वचालित रूप से डेटा को एक प्रकार से दूसरे प्रकार में बदल देता है, तो इसे निहित कास्टिंग या स्वचालित प्रकार के रूपांतरण के रूप में संदर्भित किया जाता है। यह कास्टिंग दिशानिर्देशों के एक सेट पर आधारित है जो यह बताता है कि विभिन्न प्रकार के डेटा को कैसे सह -अस्तित्व हो सकता है। एक चित्रण के रूप में, एक पूर्णांक का स्वचालित रूपांतरण एक फ्लोट में, जो बिना किसी स्पष्ट निर्देश के होता है, एक निहित कलाकारों का एक उदाहरण है।
निहित कास्टिंग को किसी विशेष सिंटैक्स की आवश्यकता नहीं होती है क्योंकि संकलक इसका ध्यान रखता है।
उदाहरण
#samaahitaF <PsaTidiAayaAae.Pca>
paunaZ mauqyaF() {
paunaZ saMqyaaR1 = 10;
ApaunaZ DnaU2 = 5.5;
ApaunaZ parinaama;
parinaama = saMqyaaR1 + DnaU2; // AMtaZinahita Walanaa sae paunaZ kae ApaunaZ
mauDznama(" parinaama hI: %ApaunaZ\n", parinaama);
naivaZtanama 0;
}
आउटपुट
आउटपुट
parinaama hI: 15.500000